#ffmpeg常用的几个命令
ffmpeg -i test.mp4 -qscale:v 1 -f image2 image/%06d.jpg#该命令将输入文件*.mp4 逐帧转为jpg图片存放在image文件夹中
ffmpeg -i *.rmvb *.mp4#该命令将源格式为rmvb视频文件转为mp4文件，其余参数为默认，包括使用cpu进行运算

#该命令可以将某时长的视频转为指定时长的目标视频，ffmpeg可以自定义视频的加速比。
#具体来说，就是将视频流的速度setpts滤波器，将视频流和音频流同步调整
#使用时，调整上述代码种的文件名和加速系数即可。不过要注意的是，调整视频流速度的setpts和调整音频流的atempo是互为倒数的
#这样才能保证生成的目标视频里画面和声音同步
ffmpeg -i input.MOV -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2.0[a]" -map "[v]" -map "[a]" video.mp4

#该命令将源格式为rmvb视频文件转为mp4文件
#-hwaccel 表示使用硬件加速，加速模式为cuda，还有cudiv等格式
#-hwaccel_device 0表示指定加速的硬件设备为零号即主机第一块显卡
ffmpeg -hwaccel cuda -hwaccel_device 0  -i *.rmvb *.mp4

#该命令将文件转为ts格式
ffmpeg -i 01.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 01.ts

#该命令将1.txt文件中的各个ts文件合并为1个mp4文件
#1.txt中ts文件列表每一行为:file '0.ts'
#                        file '1.ts'
ffmpeg -f concat -i 1.txt -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4

#该命令实现了将input.mp4从1小时51分0秒截取至2小时2分59秒
#https://zhuanlan.zhihu.com/p/142396915#:~:text=FFmpeg%E6%98%AF%E5%A4%84%E7%90%86%E8%A7%86%E9%A2%91%E7%9A%84%E7%91%9E%E5%A3%AB%E5%86%9B%E5%88%80%EF%BC%8C%E5%A6%82%E8%A6%81%E6%88%AA%E5%8F%96%E8%A7%86%E9%A2%91%E7%9A%84%E4%B8%80%E6%AE%B5%EF%BC%8C%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%E4%B8%8B%E9%9D%A2%E7%9A%84%E5%91%BD%E4%BB%A4%E3%80%82%20ffmpeg%20-i%20input.mp4%20-ss%2000%3A00%3A01%20-to,00%3A00%3A05%20-c%3Av%20copy%20-c%3Aa%20copy%20output.mp4%20%E8%A1%A8%E7%A4%BA%E6%88%AA%E5%8F%96%E8%A7%86%E9%A2%91%E7%9A%84%E7%AC%AC1s~5s%E8%BE%93%E5%87%BA%E5%88%B0%E6%96%87%E4%BB%B6out.mp4%E3%80%82
ffmpeg -i input.mp4 -ss 01:51:00 -to 02:02:59 -c:v copy -c:a copy output.mp4

#Windows下使用命令行将某个文件夹内的所有文件名写入到文件中
#将以下两行命令复制到txt文件中，保存后修改txt为bat批量运行文件，在目标文件夹中运行即可
dir  *.* /b > namelists.txt
pause